/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package chasqui.servlets;

import conn.bean.BEmpleado;
import conn.dao.DCampana;
import conn.dao.DEmpleado;
import conn.dao.DLinea;
import java.io.IOException;
import java.util.ArrayList;

import java.util.List;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


public class EmpleadoServlet extends HttpServlet
{
    protected void doPost(HttpServletRequest request,
        HttpServletResponse response) throws ServletException, IOException
    {
        String action = request.getParameter("action");
        String jspPage = "/index.jsp";

        if ((action == null) || (action.length() < 1))
        {
            action = "default";
        }

        if ("default".equals(action))
        {
            DEmpleado dempleado = new DEmpleado();
            List empleados = dempleado.getEmpleados();
            request.setAttribute("empleados", empleados);
            jspPage = "/empleado.jsp";

        }

        else if("irempleado".equals(action))
        {
            jspPage = "/nuevo_empleado.jsp";
        }
        else if("volvermoduloempleado".equals(action))
        {
            jspPage = "/modificar_usuario.jsp";

        }


        else if("modificarempleado".equals(action))
        {

            jspPage = "/modificar_empleado.jsp";
        }


        else if("irmodificarempleado".equals(action))
        {
            String id = request.getParameter("id");
            DEmpleado dempleado = new DEmpleado();
            BEmpleado empleados = dempleado.getEmpleado(Integer.parseInt(id));
            request.setAttribute("empleados", empleados);

            jspPage = "/modificar_empleado.jsp";
        }

        else if ("crearEmpleado_exe".equals(action))
        {
            DEmpleado dempleado = new DEmpleado();

            /*nombre apellidoPaterno apellidoMaterno username password email */

            String nombre          = request.getParameter("nom");
            String apellidoPaterno = request.getParameter("aplellido");
            String apellidoMaterno = request.getParameter("contra");
            String username        = request.getParameter("repcontra");
            String password        = request.getParameter("nom2");
            String email           = request.getParameter("correo2");

            int idempleado = dempleado.getUltimoId();
            BEmpleado bempleado = new BEmpleado(idempleado,nombre, apellidoPaterno,apellidoMaterno,username,password,email);
            dempleado.crearEmpleado(bempleado);

            jspPage = "/modificar_usuario.jsp";
        }

        else if ("updateEmpleado_exe".equals(action))
        {
            DEmpleado dempleado = new DEmpleado();

            /*nombre apellidoPaterno apellidoMaterno username password email */

            String idempleado      = request.getParameter("idempleado");
            String nombre          = request.getParameter("nom");
            String apellidoPaterno = request.getParameter("aplellido");
            String apellidoMaterno = request.getParameter("contra");
            String username        = request.getParameter("nom2");
            String password        = request.getParameter("repcontra");
            String email           = request.getParameter("correo2");

           //int idempleado = dempleado.getUltimoId();
            BEmpleado bempleado = new BEmpleado(Integer.valueOf(idempleado).intValue(),nombre, apellidoPaterno,apellidoMaterno,username,password,email);
            dempleado.updateEmpleado(bempleado);


            List empleados = dempleado.getEmpleados();
            request.setAttribute("empleados", empleados);

            jspPage = "/empleado.jsp";
        }
        else if ("empleadopendiente".equals(action))
        {
            String idempleado = request.getParameter("idempleado");
            DEmpleado dempleado = new DEmpleado();
            dempleado.borrarempleado(Integer.valueOf(idempleado).intValue());
            
            List empleados = dempleado.getEmpleados();
            request.setAttribute("empleados", empleados);
            jspPage = "/empleado.jsp";
        }



            dispatch(jspPage, request, response);
    }
        protected void dispatch(String jsp, HttpServletRequest request,
        HttpServletResponse response) throws ServletException, IOException
    {
        if (jsp != null)
        {
            RequestDispatcher rd = request.getRequestDispatcher(jsp);
            rd.forward(request, response);
        }
    }

    protected void doGet(HttpServletRequest request,
        HttpServletResponse response) throws ServletException, IOException
    {
        doPost(request, response);
    }

    }
